문제

연산 ⊕는 두 정수에 대한 연산으로 두 정수를 붙여서 쓴 값을 반환합니다. 예를 들면 다음과 같습니다.

  • 12 ⊕ 3 = 123
  • 3 ⊕ 12 = 312

양의 정수 ab가 주어졌을 때, abba 중 더 큰 값을 return 하는 solution 함수를 완성해 주세요.

단, abba가 같다면 ab를 return 합니다.

제한사항

  • 1 ≤ a, b ≤ 10,000

입출력 예

a b result
9 91 991
89 8 898

입출력 예 설명

입출력 예 #1

  • ab = 991 이고, ba = 919 입니다. 둘 중 더 큰 값은 991 이므로 991을 return 합니다.

입출력 예 #2

  • ab = 898 이고, ba = 889 입니다. 둘 중 더 큰 값은 898 이므로 898을 return 합니다.

코드

function solution(a, b) {
  const aToB = String(a) + String(b);
  const bToA = String(b) + String(a);

  const result = aToB >= bToA ? Number(aToB) : Number(bToA);

  return result;
}

코드 해설

  • 두 변수를 비교하기 위해서 먼저 두 변수를 선언한다.
  • aToB,bToA 변수에는 두 숫자를 더하는 것이 아니라 문자열로 바꿔 두 문자열을 연결한다.
  • 새로운 변수에 두 변수를 비교해 aToB가 크거나 같으면 숫자형으로 변환한다.
  • 변환된 aToB 결과값이 숫자형으로 나오고 거짓일 경우에는 bToA 결과값이 숫자형으로 나온다.